[INFO] fetching crate oximedia-timecode 0.1.2...
[INFO] testing oximedia-timecode-0.1.2 against try#0abe69e6c16114311cc2700e972492e64d69c28f for pr-154065
[INFO] extracting crate oximedia-timecode 0.1.2 into /workspace/builds/worker-3-tc2/source
[INFO] started tweaking crates.io crate oximedia-timecode 0.1.2
[INFO] finished tweaking crates.io crate oximedia-timecode 0.1.2
[INFO] tweaked toml for crates.io crate oximedia-timecode 0.1.2 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate oximedia-timecode 0.1.2 on toolchain 0abe69e6c16114311cc2700e972492e64d69c28f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate oximedia-timecode 0.1.2 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7ffb7b7e2efcdef6bfed22d13af6d0092ab923f3d89a775e651fa0566d6e99d5
[INFO] running `Command { std: "docker" "start" "-a" "7ffb7b7e2efcdef6bfed22d13af6d0092ab923f3d89a775e651fa0566d6e99d5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7ffb7b7e2efcdef6bfed22d13af6d0092ab923f3d89a775e651fa0566d6e99d5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7ffb7b7e2efcdef6bfed22d13af6d0092ab923f3d89a775e651fa0566d6e99d5", kill_on_drop: false }`
[INFO] [stdout] 7ffb7b7e2efcdef6bfed22d13af6d0092ab923f3d89a775e651fa0566d6e99d5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 394de2e3944a8a71df7ff2bcb365c598c8afc347f9ffa26acfd04b2156dc4d6f
[INFO] running `Command { std: "docker" "start" "-a" "394de2e3944a8a71df7ff2bcb365c598c8afc347f9ffa26acfd04b2156dc4d6f", kill_on_drop: false }`
[INFO] [stderr]    Compiling audio-core v0.2.1
[INFO] [stderr]    Compiling strength_reduce v0.2.4
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling seahash v4.1.0
[INFO] [stderr]    Compiling spin v0.10.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling audioadapter-sample v2.0.0
[INFO] [stderr]    Compiling audioadapter v2.0.0
[INFO] [stderr]    Compiling windowfunctions v0.1.1
[INFO] [stderr]    Compiling transpose v0.2.3
[INFO] [stderr]    Compiling primal-check v0.3.4
[INFO] [stderr]    Compiling audioadapter-buffers v2.0.0
[INFO] [stderr]    Compiling rustfft v6.4.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling visibility v0.1.1
[INFO] [stderr]    Compiling oxifft-codegen v0.1.3
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling oxifft v0.1.3
[INFO] [stderr]    Compiling oximedia-core v0.1.2
[INFO] [stderr]    Compiling realfft v3.5.0
[INFO] [stderr]    Compiling rubato v1.0.1
[INFO] [stderr]    Compiling oximedia-audio v0.1.2
[INFO] [stderr]    Compiling oximedia-timecode v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 21.92s
[INFO] running `Command { std: "docker" "inspect" "394de2e3944a8a71df7ff2bcb365c598c8afc347f9ffa26acfd04b2156dc4d6f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "394de2e3944a8a71df7ff2bcb365c598c8afc347f9ffa26acfd04b2156dc4d6f", kill_on_drop: false }`
[INFO] [stdout] 394de2e3944a8a71df7ff2bcb365c598c8afc347f9ffa26acfd04b2156dc4d6f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 02784d7a06b31c92ffb907f1d75d2d3ef6e5ed9423c0ec53c9556535c6e8485a
[INFO] running `Command { std: "docker" "start" "-a" "02784d7a06b31c92ffb907f1d75d2d3ef6e5ed9423c0ec53c9556535c6e8485a", kill_on_drop: false }`
[INFO] [stderr]    Compiling oximedia-timecode v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.78s
[INFO] running `Command { std: "docker" "inspect" "02784d7a06b31c92ffb907f1d75d2d3ef6e5ed9423c0ec53c9556535c6e8485a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "02784d7a06b31c92ffb907f1d75d2d3ef6e5ed9423c0ec53c9556535c6e8485a", kill_on_drop: false }`
[INFO] [stdout] 02784d7a06b31c92ffb907f1d75d2d3ef6e5ed9423c0ec53c9556535c6e8485a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 2d9a4bfb54cd7fec63d1a012b159218c134170ad8642118fa12982d3b5ba5d4f
[INFO] running `Command { std: "docker" "start" "-a" "2d9a4bfb54cd7fec63d1a012b159218c134170ad8642118fa12982d3b5ba5d4f", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.09s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/oximedia_timecode-599acda0830e0caa)
[INFO] [stdout] 
[INFO] [stdout] running 495 tests
[INFO] [stdout] test burn_in::tests::test_burn_in_style_minimal_scale ... ok
[INFO] [stdout] test burn_in::tests::test_burn_in_style_classic_scale ... ok
[INFO] [stdout] test burn_in::tests::test_default_broadcast_style ... ok
[INFO] [stdout] test burn_in::tests::test_burn_in_style_modern_scale ... ok
[INFO] [stdout] test burn_in::tests::test_default_dailies_style ... ok
[INFO] [stdout] test burn_in::tests::test_position_is_top_true ... ok
[INFO] [stdout] test burn_in::tests::test_position_is_top_false ... ok
[INFO] [stdout] test burn_in::tests::test_render_timecode_text_top_left ... ok
[INFO] [stdout] test burn_in::tests::test_position_is_right_true ... ok
[INFO] [stdout] test continuity::tests::test_check_continuity_continuous ... ok
[INFO] [stdout] test burn_in::tests::test_render_timecode_text_bottom_center ... ok
[INFO] [stdout] test continuity::tests::test_check_continuity_gap ... ok
[INFO] [stdout] test burn_in::tests::test_render_timecode_text_top_right ... ok
[INFO] [stdout] test burn_in::tests::test_position_is_right_false ... ok
[INFO] [stdout] test continuity::tests::test_check_continuity_overlap ... ok
[INFO] [stdout] test continuity::tests::test_expected_frame_count ... ok
[INFO] [stdout] test continuity::tests::test_find_gaps ... ok
[INFO] [stdout] test continuity::tests::test_monitor_report ... ok
[INFO] [stdout] test continuity::tests::test_check_continuity_repeat ... ok
[INFO] [stdout] test continuity::tests::test_timecode_range_contains ... ok
[INFO] [stdout] test continuity::tests::test_monitor_continuous ... ok
[INFO] [stdout] test continuity::tests::test_monitor_reset ... ok
[INFO] [stdout] test continuity::tests::test_timecode_range_duration ... ok
[INFO] [stdout] test continuity::tests::test_timecode_range_overlaps ... ok
[INFO] [stdout] test drop_frame::tests::test_df_one_minute ... ok
[INFO] [stdout] test drop_frame::tests::test_total_frame_counter_drop_frame ... ok
[INFO] [stdout] test drop_frame::tests::test_total_frame_counter_non_drop_frame ... ok
[INFO] [stdout] test continuity::tests::test_monitor_gap_detection ... ok
[INFO] [stdout] test drop_frame::tests::test_total_frame_counter_reset ... ok
[INFO] [stdout] test drop_frame::tests::test_df_one_frame ... ok
[INFO] [stdout] test continuity::tests::test_split_into_segments ... ok
[INFO] [stdout] test drop_frame::tests::test_df_roundtrip ... ok
[INFO] [stdout] test drop_frame::tests::test_df_zero ... ok
[INFO] [stdout] test duration::tests::test_add ... ok
[INFO] [stdout] test duration::tests::test_duration_range_contains_true ... ok
[INFO] [stdout] test duration::tests::test_duration_range_duration_frames ... ok
[INFO] [stdout] test drop_frame::tests::test_is_dropped_frame ... ok
[INFO] [stdout] test drop_frame::tests::test_parse_df_invalid ... ok
[INFO] [stdout] test duration::tests::test_duration_range_overlaps_false ... ok
[INFO] [stdout] test drop_frame::tests::test_parse_df_valid ... ok
[INFO] [stdout] test drop_frame::tests::test_parse_format_roundtrip ... ok
[INFO] [stdout] test drop_frame::tests::test_df_one_second ... ok
[INFO] [stdout] test duration::tests::test_duration_range_overlaps_true ... ok
[INFO] [stdout] test drop_frame::tests::test_format_df ... ok
[INFO] [stdout] test duration::tests::test_duration_range_contains_false ... ok
[INFO] [stdout] test drop_frame::tests::test_df_ten_minutes ... ok
[INFO] [stdout] test duration::tests::test_is_negative_false ... ok
[INFO] [stdout] test duration::tests::test_is_negative_true ... ok
[INFO] [stdout] test duration::tests::test_to_seconds_zero_fps ... ok
[INFO] [stdout] test duration::tests::test_subtract_negative_returns_none ... ok
[INFO] [stdout] test frame_offset::tests::test_cross_rate_25_to_50 ... ok
[INFO] [stdout] test duration::tests::test_subtract_positive ... ok
[INFO] [stdout] test frame_offset::tests::test_cross_rate_50_to_25 ... ok
[INFO] [stdout] test duration::tests::test_subtract_to_zero ... ok
[INFO] [stdout] test frame_offset::tests::test_cross_rate_same_rate ... ok
[INFO] [stdout] test frame_offset::tests::test_frame_duration ... ok
[INFO] [stdout] test frame_offset::tests::test_frame_offset_diff ... ok
[INFO] [stdout] test frame_offset::tests::test_frame_offset_from_seconds_25fps ... ok
[INFO] [stdout] test duration::tests::test_timecode_subtract_negative ... ok
[INFO] [stdout] test frame_offset::tests::test_frame_offset_sub_saturate ... ok
[INFO] [stdout] test frame_offset::tests::test_frame_offset_arithmetic ... ok
[INFO] [stdout] test frame_offset::tests::test_frame_offset_from_timecode ... ok
[INFO] [stdout] test duration::tests::test_timecode_subtract_positive ... ok
[INFO] [stdout] test duration::tests::test_to_milliseconds ... ok
[INFO] [stdout] test duration::tests::test_to_seconds_25fps ... ok
[INFO] [stdout] test frame_offset::tests::test_frame_offset_to_seconds_25fps ... ok
[INFO] [stdout] test frame_offset::tests::test_frame_offset_to_timecode ... ok
[INFO] [stdout] test frame_offset::tests::test_offset_table_empty_lookup ... ok
[INFO] [stdout] test frame_offset::tests::test_offset_table_lookup ... ok
[INFO] [stdout] test frame_offset::tests::test_offset_table_offset_at ... ok
[INFO] [stdout] test frame_rate::tests::test_common_frame_rates_contains_25 ... ok
[INFO] [stdout] test frame_rate::tests::test_common_frame_rates_count ... ok
[INFO] [stdout] test frame_rate::tests::test_display_fractional ... ok
[INFO] [stdout] test frame_rate::tests::test_fps_f64_exact ... ok
[INFO] [stdout] test frame_rate::tests::test_display_integer ... ok
[INFO] [stdout] test frame_rate::tests::test_fps_f64_fractional ... ok
[INFO] [stdout] test frame_rate::tests::test_is_drop_frame_compatible_false ... ok
[INFO] [stdout] test frame_rate::tests::test_is_drop_frame_compatible_true ... ok
[INFO] [stdout] test frame_rate::tests::test_matches_equal ... ok
[INFO] [stdout] test frame_rate::tests::test_matches_not_equal ... ok
[INFO] [stdout] test frame_rate::tests::test_new_valid ... ok
[INFO] [stdout] test frame_rate::tests::test_nominal_fps_exact ... ok
[INFO] [stdout] test jam_sync::tests::test_holdover_keeps_advancing ... ok
[INFO] [stdout] test jam_sync::tests::test_first_feed_transitions_to_locking ... ok
[INFO] [stdout] test jam_sync::tests::test_initial_state_is_waiting ... ok
[INFO] [stdout] test frame_rate::tests::test_nominal_fps_rounded ... ok
[INFO] [stdout] test jam_sync::tests::test_lock_acquired_after_threshold ... ok
[INFO] [stdout] test jam_sync::tests::test_holdover_triggered_after_budget_exceeded ... ok
[INFO] [stdout] test jam_sync::tests::test_non_sequential_resets_lock_count ... ok
[INFO] [stdout] test jam_sync::tests::test_lock_not_acquired_before_threshold ... ok
[INFO] [stdout] test frame_rate::tests::test_new_zero_denominator ... ok
[INFO] [stdout] test jam_sync::tests::test_output_frozen_while_locking ... ok
[INFO] [stdout] test jam_sync::tests::test_re_lock_from_holdover ... ok
[INFO] [stdout] test jam_sync::tests::test_output_tracks_reference_after_lock ... ok
[INFO] [stdout] test jam_sync::tests::test_frames_since_reference_counter ... ok
[INFO] [stdout] test jam_sync::tests::test_reset_returns_to_waiting ... ok
[INFO] [stdout] test ltc::decoder::tests::test_bits_to_u8 ... ok
[INFO] [stdout] test ltc::decoder::tests::test_decoder_creation ... ok
[INFO] [stdout] test ltc::decoder::tests::test_drop_frame_validator ... ok
[INFO] [stdout] test ltc::decoder::tests::test_zero_crossing_detector ... ok
[INFO] [stdout] test ltc::encoder::tests::test_encode_frame ... ok
[INFO] [stdout] test ltc::encoder::tests::test_encoder_creation ... ok
[INFO] [stdout] test ltc::encoder::tests::test_even_parity ... ok
[INFO] [stdout] test ltc::encoder::tests::test_user_bits_ascii ... ok
[INFO] [stdout] test ltc::encoder::tests::test_user_bits_date ... ok
[INFO] [stdout] test ltc::tests::test_ltc_reader_creation ... ok
[INFO] [stdout] test ltc::tests::test_ltc_writer_creation ... ok
[INFO] [stdout] test ltc::tests::test_sync_word ... ok
[INFO] [stdout] test ltc_encoder::tests::test_audio_encoder_amplitude_bounds ... ok
[INFO] [stdout] test ltc_encoder::tests::test_audio_encoder_output_length ... ok
[INFO] [stdout] test ltc_encoder::tests::test_audio_encoder_params_accessor ... ok
[INFO] [stdout] test ltc_encoder::tests::test_audio_encoder_polarity_reset ... ok
[INFO] [stdout] test ltc_encoder::tests::test_audio_encoder_sequence ... ok
[INFO] [stdout] test ltc_encoder::tests::test_bit_encoder_drop_frame_flag ... ok
[INFO] [stdout] test ltc_encoder::tests::test_bit_encoder_max_values ... ok
[INFO] [stdout] test ltc_encoder::tests::test_bit_encoder_midnight ... ok
[INFO] [stdout] test ltc_encoder::tests::test_bit_encoder_roundtrip ... ok
[INFO] [stdout] test ltc_encoder::tests::test_signal_params_30fps ... ok
[INFO] [stdout] test ltc_encoder::tests::test_bit_encoder_sync_word_present ... ok
[INFO] [stdout] test ltc_encoder::tests::test_signal_params_samples_per_bit_25fps ... ok
[INFO] [stdout] test ltc_encoder::tests::test_signal_params_samples_per_frame_25fps ... ok
[INFO] [stdout] test ltc_parser::tests::test_build_ltc_word_length ... ok
[INFO] [stdout] test ltc_parser::tests::test_check_sync_invalid ... ok
[INFO] [stdout] test ltc_parser::tests::test_check_sync_too_short ... ok
[INFO] [stdout] test ltc_parser::tests::test_check_sync_valid ... ok
[INFO] [stdout] test ltc_parser::tests::test_decode_bits_empty ... ok
[INFO] [stdout] test ltc_parser::tests::test_decode_bits_finds_one_frame ... ok
[INFO] [stdout] test ltc_parser::tests::test_decode_bits_too_short ... ok
[INFO] [stdout] test ltc_parser::tests::test_decode_drop_frame_flag ... ok
[INFO] [stdout] test ltc_parser::tests::test_decode_frame_bit_offset ... ok
[INFO] [stdout] test ltc_parser::tests::test_decode_frame_buffer_too_small ... ok
[INFO] [stdout] test ltc_parser::tests::test_encode_decode_midnight ... ok
[INFO] [stdout] test ltc_parser::tests::test_encode_decode_roundtrip_simple ... ok
[INFO] [stdout] test ltc_parser::tests::test_ltcbit_as_u8 ... ok
[INFO] [stdout] test ltc_parser::tests::test_ltcbit_from_bool ... ok
[INFO] [stdout] test ltc_parser::tests::test_ltcbit_from_u8 ... ok
[INFO] [stdout] test ltc_parser::tests::test_ltcframe_color_frame_default_false ... ok
[INFO] [stdout] test midi_timecode::tests::test_mtc_frame_rate_code ... ok
[INFO] [stdout] test midi_timecode::tests::test_mtc_frame_rate_fps ... ok
[INFO] [stdout] test midi_timecode::tests::test_mtc_frame_rate_from_code ... ok
[INFO] [stdout] test midi_timecode::tests::test_mtc_full_frame_decode ... ok
[INFO] [stdout] test midi_timecode::tests::test_mtc_full_frame_decode_invalid ... ok
[INFO] [stdout] test midi_timecode::tests::test_mtc_full_frame_encode ... ok
[INFO] [stdout] test midi_timecode::tests::test_mtc_receiver_assemble ... ok
[INFO] [stdout] test midi_timecode::tests::test_mtc_receiver_default ... ok
[INFO] [stdout] test midi_timecode::tests::test_mtc_receiver_reset ... ok
[INFO] [stdout] test midi_timecode::tests::test_mtc_timecode_from_frame_count ... ok
[INFO] [stdout] test midi_timecode::tests::test_mtc_timecode_new ... ok
[INFO] [stdout] test midi_timecode::tests::test_mtc_timecode_roundtrip ... ok
[INFO] [stdout] test midi_timecode::tests::test_mtc_timecode_to_frame_count ... ok
[INFO] [stdout] test reader::tests::test_ltc_decoder_new ... ok
[INFO] [stdout] test reader::tests::test_parse_timecode_string_25fps ... ok
[INFO] [stdout] test reader::tests::test_parse_timecode_string_drop_frame ... ok
[INFO] [stdout] test reader::tests::test_ltc_decoder_feed_silence ... ok
[INFO] [stdout] test reader::tests::test_parse_timecode_string_invalid ... ok
[INFO] [stdout] test reader::tests::test_timecode_source_eq ... ok
[INFO] [stdout] test reader::tests::test_timecode_validator_invalid_frames ... ok
[INFO] [stdout] test reader::tests::test_timecode_validator_reset ... ok
[INFO] [stdout] test reader::tests::test_timecode_validator_sequence_continuity ... ok
[INFO] [stdout] test reader::tests::test_timecode_validator_sequence_discontinuity ... ok
[INFO] [stdout] test reader::tests::test_timecode_validator_valid ... ok
[INFO] [stdout] test reader::tests::test_vitc_line_numbers ... ok
[INFO] [stdout] test sync_map::tests::test_sync_map_sorted_after_add ... ok
[INFO] [stdout] test reader::tests::test_vitc_parser_all_zeros ... ok
[INFO] [stdout] test reader::tests::test_vitc_parser_new ... ok
[INFO] [stdout] test reader::tests::test_vitc_parser_short_line ... ok
[INFO] [stdout] test sync::tests::test_aggregator ... ok
[INFO] [stdout] test sync::tests::test_genlock ... ok
[INFO] [stdout] test sync::tests::test_jam_sync ... ok
[INFO] [stdout] test sync::tests::test_synchronizer_creation ... ok
[INFO] [stdout] test sync_map::tests::test_sync_map_empty_passthrough ... ok
[INFO] [stdout] test sync_map::tests::test_sync_map_extrapolate_after_last ... ok
[INFO] [stdout] test sync_map::tests::test_sync_map_extrapolate_before_first ... ok
[INFO] [stdout] test sync_map::tests::test_sync_map_point_count ... ok
[INFO] [stdout] test sync_map::tests::test_sync_map_single_point ... ok
[INFO] [stdout] test sync_map::tests::test_sync_map_target_to_source_single_point ... ok
[INFO] [stdout] test sync_map::tests::test_sync_map_two_points_interpolation ... ok
[INFO] [stdout] test sync_map::tests::test_tc_offset_is_zero_false ... ok
[INFO] [stdout] test sync_map::tests::test_tc_offset_is_zero_true ... ok
[INFO] [stdout] test sync_map::tests::test_tc_offset_negate ... ok
[INFO] [stdout] test sync_map::tests::test_tc_offset_negate_zero ... ok
[INFO] [stdout] test sync_map::tests::test_tc_sync_point_negative_offset ... ok
[INFO] [stdout] test sync_map::tests::test_tc_sync_point_offset ... ok
[INFO] [stdout] test tc_calculator::tests::test_add_frames_basic ... ok
[INFO] [stdout] test tc_calculator::tests::test_add_frames_wraps_hour ... ok
[INFO] [stdout] test tc_calculator::tests::test_add_seconds ... ok
[INFO] [stdout] test tc_calculator::tests::test_add_zero_frames ... ok
[INFO] [stdout] test tc_calculator::tests::test_difference_negative ... ok
[INFO] [stdout] test tc_calculator::tests::test_difference_positive ... ok
[INFO] [stdout] test tc_calculator::tests::test_difference_zero ... ok
[INFO] [stdout] test tc_calculator::tests::test_frames_per_day_25fps ... ok
[INFO] [stdout] test tc_calculator::tests::test_frames_per_day_30fps ... ok
[INFO] [stdout] test tc_calculator::tests::test_max_tc ... ok
[INFO] [stdout] test tc_calculator::tests::test_min_tc ... ok
[INFO] [stdout] test tc_calculator::tests::test_operation_display ... ok
[INFO] [stdout] test tc_calculator::tests::test_subtract_frames_basic ... ok
[INFO] [stdout] test tc_calculator::tests::test_subtract_frames_wraps_backwards ... ok
[INFO] [stdout] test tc_calculator::tests::test_subtract_seconds ... ok
[INFO] [stdout] test tc_calculator::tests::test_tc_result_tc_accessor ... ok
[INFO] [stdout] test tc_compare::tests::test_compare_after ... ok
[INFO] [stdout] test tc_compare::tests::test_compare_before ... ok
[INFO] [stdout] test tc_compare::tests::test_compare_equal ... ok
[INFO] [stdout] test tc_compare::tests::test_distance_frames_one_second ... ok
[INFO] [stdout] test tc_compare::tests::test_distance_frames_same ... ok
[INFO] [stdout] test tc_compare::tests::test_distance_frames_symmetric ... ok
[INFO] [stdout] test tc_compare::tests::test_distance_seconds ... ok
[INFO] [stdout] test tc_compare::tests::test_earliest_latest ... ok
[INFO] [stdout] test tc_compare::tests::test_is_ascending ... ok
[INFO] [stdout] test tc_compare::tests::test_is_contiguous ... ok
[INFO] [stdout] test tc_compare::tests::test_midpoint ... ok
[INFO] [stdout] test tc_compare::tests::test_is_within_range ... ok
[INFO] [stdout] test tc_compare::tests::test_sort_timecodes ... ok
[INFO] [stdout] test tc_compare::tests::test_tc_span_creation ... ok
[INFO] [stdout] test tc_compare::tests::test_tc_span_intersection ... ok
[INFO] [stdout] test tc_compare::tests::test_tc_span_invalid ... ok
[INFO] [stdout] test tc_convert::tests::test_audio_samples ... ok
[INFO] [stdout] test tc_compare::tests::test_tc_span_overlaps ... ok
[INFO] [stdout] test tc_convert::tests::test_convert_preserve_frame ... ok
[INFO] [stdout] test tc_convert::tests::test_convert_preserve_time_25_to_30 ... ok
[INFO] [stdout] test tc_convert::tests::test_convert_preserve_display ... ok
[INFO] [stdout] test tc_convert::tests::test_df_to_ndf_already_ndf_is_error ... ok
[INFO] [stdout] test tc_convert::tests::test_df_to_ndf_29_97 ... ok
[INFO] [stdout] test tc_convert::tests::test_df_ndf_roundtrip_preserves_frame_count ... ok
[INFO] [stdout] test tc_convert::tests::test_frames_to_smpte_string ... ok
[INFO] [stdout] test tc_convert::tests::test_convert_preserve_time_same_rate ... ok
[INFO] [stdout] test tc_convert::tests::test_ndf_to_df_29_97 ... ok
[INFO] [stdout] test tc_convert::tests::test_ndf_to_df_already_df_is_error ... ok
[INFO] [stdout] test tc_convert::tests::test_ndf_to_df_unsupported_rate_is_error ... ok
[INFO] [stdout] test tc_convert::tests::test_negative_seconds_error ... ok
[INFO] [stdout] test tc_compare::tests::test_tc_span_contains ... ok
[INFO] [stdout] test tc_convert::tests::test_parse_smpte_invalid ... ok
[INFO] [stdout] test tc_convert::tests::test_seconds_to_timecode_25fps ... ok
[INFO] [stdout] test tc_convert::tests::test_timecode_to_seconds ... ok
[INFO] [stdout] test tc_convert::tests::test_parse_smpte_ndf ... ok
[INFO] [stdout] test tc_drift::tests::test_analyze_no_drift ... ok
[INFO] [stdout] test tc_drift::tests::test_analyze_with_drift ... ok
[INFO] [stdout] test tc_drift::tests::test_clear_samples ... ok
[INFO] [stdout] test tc_convert::tests::test_millis_roundtrip ... ok
[INFO] [stdout] test tc_drift::tests::test_compute_ppm_positive ... ok
[INFO] [stdout] test tc_drift::tests::test_compute_ppm_zero ... ok
[INFO] [stdout] test tc_drift::tests::test_compute_ppm_zero_reference ... ok
[INFO] [stdout] test tc_drift::tests::test_config_builder ... ok
[INFO] [stdout] test tc_drift::tests::test_config_defaults ... ok
[INFO] [stdout] test tc_drift::tests::test_correct_timecode_backward ... ok
[INFO] [stdout] test tc_drift::tests::test_correct_timecode_forward ... ok
[INFO] [stdout] test tc_drift::tests::test_detector_add_sample ... ok
[INFO] [stdout] test tc_drift::tests::test_detector_no_samples ... ok
[INFO] [stdout] test tc_drift::tests::test_drift_sample_creation ... ok
[INFO] [stdout] test tc_drift::tests::test_drift_sample_positive ... ok
[INFO] [stdout] test tc_drift::tests::test_drift_sample_zero_drift ... ok
[INFO] [stdout] test tc_drift::tests::test_drift_sample_zero_expected ... ok
[INFO] [stdout] test tc_interpolate::tests::test_batch_interpolate ... ok
[INFO] [stdout] test tc_interpolate::tests::test_add_ref_sorted ... ok
[INFO] [stdout] test tc_interpolate::tests::test_interpolate_empty ... ok
[INFO] [stdout] test tc_interpolate::tests::test_clear ... ok
[INFO] [stdout] test tc_drift::tests::test_drift_sample_negative ... ok
[INFO] [stdout] test tc_interpolate::tests::test_interpolate_exact_match ... ok
[INFO] [stdout] test tc_interpolate::tests::test_interpolate_forward_extrapolation ... ok
[INFO] [stdout] test tc_interpolate::tests::test_interpolate_forward_only ... ok
[INFO] [stdout] test tc_interpolate::tests::test_interpolate_linear_between ... ok
[INFO] [stdout] test tc_interpolate::tests::test_interpolator_creation ... ok
[INFO] [stdout] test tc_interpolate::tests::test_max_gap_exceeded ... ok
[INFO] [stdout] test tc_interpolate::tests::test_interpolate_nearest ... ok
[INFO] [stdout] test tc_interpolate::tests::test_validate_consistency_mismatch ... ok
[INFO] [stdout] test tc_interpolate::tests::test_ref_point_creation ... ok
[INFO] [stdout] test tc_math::tests::test_duration_add_subtract ... ok
[INFO] [stdout] test tc_math::tests::test_duration_as_seconds ... ok
[INFO] [stdout] test tc_interpolate::tests::test_validate_consistency_ok ... ok
[INFO] [stdout] test tc_math::tests::test_duration_divide ... ok
[INFO] [stdout] test tc_math::tests::test_duration_divide_by_zero ... ok
[INFO] [stdout] test tc_math::tests::test_duration_from_hmsf ... ok
[INFO] [stdout] test tc_math::tests::test_duration_display ... ok
[INFO] [stdout] test tc_math::tests::test_duration_multiply ... ok
[INFO] [stdout] test tc_math::tests::test_duration_scale ... ok
[INFO] [stdout] test tc_math::tests::test_duration_to_hmsf ... ok
[INFO] [stdout] test tc_math::tests::test_math_convert_frame_count ... ok
[INFO] [stdout] test tc_math::tests::test_math_duration_between ... ok
[INFO] [stdout] test tc_math::tests::test_math_midpoint ... ok
[INFO] [stdout] test tc_math::tests::test_math_offset_by_percentage ... ok
[INFO] [stdout] test tc_math::tests::test_duration_is_zero ... ok
[INFO] [stdout] test tc_math::tests::test_math_position_percentage ... ok
[INFO] [stdout] test tc_math::tests::test_duration_midpoint ... ok
[INFO] [stdout] test tc_math::tests::test_math_rate_conversion_factor ... ok
[INFO] [stdout] test tc_metadata::tests::test_metadata_timeline_empty_lookup ... ok
[INFO] [stdout] test tc_metadata::tests::test_metadata_timeline_insert_and_lookup ... ok
[INFO] [stdout] test tc_metadata::tests::test_record_date_invalid_day ... ok
[INFO] [stdout] test tc_metadata::tests::test_record_date_valid ... ok
[INFO] [stdout] test tc_metadata::tests::test_record_date_invalid_month ... ok
[INFO] [stdout] test tc_metadata::tests::test_reel_id ... ok
[INFO] [stdout] test tc_metadata::tests::test_tc_metadata_new ... ok
[INFO] [stdout] test tc_metadata::tests::test_tc_metadata_summary ... ok
[INFO] [stdout] test tc_metadata::tests::test_tc_metadata_validate_ok ... ok
[INFO] [stdout] test tc_metadata::tests::test_tc_metadata_with_builders ... ok
[INFO] [stdout] test tc_metadata::tests::test_timecode_source_variants ... ok
[INFO] [stdout] test tc_metadata::tests::test_user_bits_date_encode_decode ... ok
[INFO] [stdout] test tc_metadata::tests::test_tc_metadata_validate_mismatch ... ok
[INFO] [stdout] test tc_metadata::tests::test_user_bits_nibble ... ok
[INFO] [stdout] test tc_metadata::tests::test_user_bits_no_date ... ok
[INFO] [stdout] test tc_offset_table::tests::test_build_25fps ... ok
[INFO] [stdout] test tc_offset_table::tests::test_frame_to_timecode_minute_boundary ... ok
[INFO] [stdout] test tc_offset_table::tests::test_minute_offset_out_of_range ... ok
[INFO] [stdout] test tc_offset_table::tests::test_roundtrip_30fps ... ok
[INFO] [stdout] test tc_offset_table::tests::test_rate_accessor ... ok
[INFO] [stdout] test tc_offset_table::tests::test_signed_distance_negative ... ok
[INFO] [stdout] test tc_offset_table::tests::test_total_day_frames_25 ... ok
[INFO] [stdout] test tc_offset_table::tests::test_signed_distance_positive ... ok
[INFO] [stdout] test tc_offset_table::tests::test_total_day_frames_30 ... ok
[INFO] [stdout] test tc_range::tests::test_contains_frame ... ok
[INFO] [stdout] test tc_range::tests::test_create_range ... ok
[INFO] [stdout] test tc_offset_table::tests::test_table_is_not_empty ... ok
[INFO] [stdout] test tc_range::tests::test_extend_and_trim ... ok
[INFO] [stdout] test tc_range::tests::test_frame_iter_count ... ok
[INFO] [stdout] test tc_range::tests::test_intersect ... ok
[INFO] [stdout] test tc_range::tests::test_duration_frames ... ok
[INFO] [stdout] test tc_range::tests::test_invalid_range ... ok
[INFO] [stdout] test tc_range::tests::test_duration_seconds ... ok
[INFO] [stdout] test tc_offset_table::tests::test_zero_timecode ... ok
[INFO] [stdout] test tc_range::tests::test_intersect_none ... ok
[INFO] [stdout] test tc_offset_table::tests::test_roundtrip_ndf ... ok
[INFO] [stdout] test tc_range::tests::test_merge_ranges ... ok
[INFO] [stdout] test tc_range::tests::test_offset_negative ... ok
[INFO] [stdout] test tc_range::tests::test_offset_positive ... ok
[INFO] [stdout] test tc_range::tests::test_overlap_kind_equal ... ok
[INFO] [stdout] test tc_range::tests::test_overlap_kind_contains ... ok
[INFO] [stdout] test tc_range::tests::test_overlap_kind_partial ... ok
[INFO] [stdout] test tc_range::tests::test_overlaps ... ok
[INFO] [stdout] test tc_range::tests::test_split_at_frame ... ok
[INFO] [stdout] test tc_range::tests::test_total_coverage ... ok
[INFO] [stdout] test tc_range::tests::test_union ... ok
[INFO] [stdout] test tc_sequence::tests::test_build_sequence ... ok
[INFO] [stdout] test tc_sequence::tests::test_compact_merges_contiguous ... ok
[INFO] [stdout] test tc_sequence::tests::test_compact_preserves_gaps ... ok
[INFO] [stdout] test tc_sequence::tests::test_detect_gaps ... ok
[INFO] [stdout] test tc_sequence::tests::test_run_contains ... ok
[INFO] [stdout] test tc_sequence::tests::test_find_run_at_offset ... ok
[INFO] [stdout] test tc_sequence::tests::test_end_timecode ... ok
[INFO] [stdout] test tc_sequence::tests::test_run_zero_frames_error ... ok
[INFO] [stdout] test tc_sequence::tests::test_run_duration_secs ... ok
[INFO] [stdout] test tc_sequence::tests::test_run_creation ... ok
[INFO] [stdout] test tc_sequence::tests::test_sequence_is_contiguous ... ok
[INFO] [stdout] test tc_sequence::tests::test_sequence_not_contiguous ... ok
[INFO] [stdout] test tc_sequence::tests::test_sequence_push_and_total ... ok
[INFO] [stdout] test tc_sequence::tests::test_total_duration_secs ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_boundary_checker_allowed ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_boundary_checker_matching_ranges ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_boundary_checker_not_allowed ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_boundary_display ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_duration_frames ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_duration_seconds ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_empty_range_duration ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_encompasses ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_from_boundary_first_half ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_from_boundary_single_hour ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_full_day_range ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_intersection_none ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_overlaps_false ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_range_contains_on_boundary ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_range_contains_outside ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_range_from_timecodes ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_split_at ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_split_at_invalid ... ok
[INFO] [stdout] test tc_subtitle_sync::tests::test_apply_frame_offset_negative_clamp ... ok
[INFO] [stdout] test tc_subtitle_sync::tests::test_apply_frame_offset_positive ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_intersection_some ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_overlaps_true ... ok
[INFO] [stdout] test tc_smpte_ranges::tests::test_range_contains_inside ... ok
[INFO] [stdout] test tc_subtitle_sync::tests::test_compute_average_drift_some ... ok
[INFO] [stdout] test tc_subtitle_sync::tests::test_compute_average_drift_zero ... ok
[INFO] [stdout] test tc_subtitle_sync::tests::test_cue_duration_frames ... ok
[INFO] [stdout] test tc_subtitle_sync::tests::test_cue_duration_secs ... ok
[INFO] [stdout] test tc_subtitle_sync::tests::test_cue_no_overlap ... ok
[INFO] [stdout] test tc_subtitle_sync::tests::test_cue_overlap ... ok
[INFO] [stdout] test tc_subtitle_sync::tests::test_find_overlaps ... ok
[INFO] [stdout] test tc_subtitle_sync::tests::test_linear_stretch_double ... ok
[INFO] [stdout] test tc_subtitle_sync::tests::test_linear_stretch_identity ... ok
[INFO] [stdout] test tc_subtitle_sync::tests::test_sort_cues_by_in ... ok
[INFO] [stdout] test tc_validator::tests::test_drop_frame_illegal_position_detected ... ok
[INFO] [stdout] test tc_validator::tests::test_drop_frame_tenth_minute_is_ok ... ok
[INFO] [stdout] test tc_validator::tests::test_frames_out_of_range ... ok
[INFO] [stdout] test tc_validator::tests::test_hours_out_of_range ... ok
[INFO] [stdout] test tc_validator::tests::test_is_valid_returns_true_for_good_tc ... ok
[INFO] [stdout] test tc_validator::tests::test_minutes_out_of_range ... ok
[INFO] [stdout] test tc_validator::tests::test_multiple_violations_accumulate ... ok
[INFO] [stdout] test tc_validator::tests::test_no_rules_produces_no_violations ... ok
[INFO] [stdout] test tc_validator::tests::test_rule_display ... ok
[INFO] [stdout] test tc_validator::tests::test_seconds_out_of_range ... ok
[INFO] [stdout] test tc_validator::tests::test_valid_timecode_no_violations ... ok
[INFO] [stdout] test tc_validator::tests::test_validate_range_all_valid ... ok
[INFO] [stdout] test tc_validator::tests::test_validate_range_empty_slice ... ok
[INFO] [stdout] test tc_validator::tests::test_validate_range_with_violation ... ok
[INFO] [stdout] test tc_validator::tests::test_violation_display ... ok
[INFO] [stdout] test tc_validator::tests::test_within_range_fail ... ok
[INFO] [stdout] test tc_validator::tests::test_within_range_pass ... ok
[INFO] [stdout] test tests::test_add_timecodes ... ok
[INFO] [stdout] test tests::test_add_u32_frames ... ok
[INFO] [stdout] test tests::test_frame_count_cache_after_increment ... ok
[INFO] [stdout] test tests::test_frame_count_cache_matches_recomputed ... ok
[INFO] [stdout] test tc_subtitle_sync::tests::test_compute_average_drift_empty ... ok
[INFO] [stdout] test tests::test_frame_rate ... ok
[INFO] [stdout] test tests::test_frame_rate_from_info ... ok
[INFO] [stdout] test tests::test_framerate_47952_and_120 ... ok
[INFO] [stdout] test tests::test_from_string_df ... ok
[INFO] [stdout] test tests::test_from_string_invalid_parts ... ok
[INFO] [stdout] test tests::test_ord_timecodes ... ok
[INFO] [stdout] test tests::test_sub_timecodes ... ok
[INFO] [stdout] test tests::test_from_string_ndf ... ok
[INFO] [stdout] test tests::test_from_string_invalid_too_short ... ok
[INFO] [stdout] test tests::test_timecode_increment ... ok
[INFO] [stdout] test tests::test_timecode_creation ... ok
[INFO] [stdout] test tests::test_to_seconds_f64_one_hour_25fps ... ok
[INFO] [stdout] test tests::test_to_seconds_f64_pull_down ... ok
[INFO] [stdout] test timecode_calculator::tests::test_add_frames_backward ... ok
[INFO] [stdout] test tests::test_timecode_display ... ok
[INFO] [stdout] test timecode_calculator::tests::test_add_frames_forward ... ok
[INFO] [stdout] test timecode_calculator::tests::test_add_frames_wrap_at_24h ... ok
[INFO] [stdout] test timecode_calculator::tests::test_duration_from_timecode ... ok
[INFO] [stdout] test timecode_calculator::tests::test_frame_count_roundtrip_ndf ... ok
[INFO] [stdout] test timecode_calculator::tests::test_parse_df ... ok
[INFO] [stdout] test timecode_calculator::tests::test_timecode_value_new ... ok
[INFO] [stdout] test timecode_calculator::tests::test_to_frame_count_ndf ... ok
[INFO] [stdout] test timecode_calculator::tests::test_parse_invalid ... ok
[INFO] [stdout] test timecode_calculator::tests::test_to_frame_count_one_hour ... ok
[INFO] [stdout] test timecode_calculator::tests::test_subtract ... ok
[INFO] [stdout] test timecode_event::tests::test_clear_resets_state ... ok
[INFO] [stdout] test timecode_event::tests::test_cue_event ... ok
[INFO] [stdout] test timecode_calculator::tests::test_display_df ... ok
[INFO] [stdout] test timecode_event::tests::test_custom_event ... ok
[INFO] [stdout] test timecode_calculator::tests::test_duration_to_timecode ... ok
[INFO] [stdout] test timecode_event::tests::test_duration_seconds ... ok
[INFO] [stdout] test timecode_calculator::tests::test_parse_ndf ... ok
[INFO] [stdout] test timecode_event::tests::test_edit_ranges_reconstruction ... ok
[INFO] [stdout] test timecode_event::tests::test_event_kind_display ... ok
[INFO] [stdout] test timecode_event::tests::test_mark_in_records_event ... ok
[INFO] [stdout] test timecode_event::tests::test_mark_ins_filter ... ok
[INFO] [stdout] test timecode_event::tests::test_mark_out_without_mark_in_returns_none ... ok
[INFO] [stdout] test timecode_event::tests::test_mark_out_returns_range ... ok
[INFO] [stdout] test timecode_format::tests::test_drop_frame_separator ... ok
[INFO] [stdout] test timecode_format::tests::test_format_enum_separator ... ok
[INFO] [stdout] test timecode_format::tests::test_format_frames_frames ... ok
[INFO] [stdout] test timecode_format::tests::test_format_frames_seconds ... ok
[INFO] [stdout] test timecode_format::tests::test_format_frames_smpte_df ... ok
[INFO] [stdout] test timecode_format::tests::test_format_frames_smpte_mixed ... ok
[INFO] [stdout] test timecode_format::tests::test_format_frames_smpte_ndf ... ok
[INFO] [stdout] test timecode_event::tests::test_event_display ... ok
[INFO] [stdout] test timecode_format::tests::test_parse_smpte_invalid_minutes ... ok
[INFO] [stdout] test timecode_format::tests::test_parse_smpte_invalid_too_few_parts ... ok
[INFO] [stdout] test timecode_format::tests::test_parse_smpte_valid_colon ... ok
[INFO] [stdout] test timecode_format::tests::test_parse_smpte_valid_semicolon ... ok
[INFO] [stdout] test timecode_format::tests::test_format_frames_feet ... ok
[INFO] [stdout] test timecode_generator::tests::test_generator_starts_at_midnight ... ok
[INFO] [stdout] test timecode_generator::tests::test_reset_to_arbitrary_tc ... ok
[INFO] [stdout] test timecode_generator::tests::test_drop_frame_generator_next_at_minute_boundary ... ok
[INFO] [stdout] test timecode_generator::tests::test_reset_to_midnight ... ok
[INFO] [stdout] test timecode_format::tests::test_parse_smpte_invalid_frames_exceed_fps ... ok
[INFO] [stdout] test timecode_format::tests::test_formatter_new_zero_fps_returns_none ... ok
[INFO] [stdout] test timecode_generator::tests::test_next_increments ... ok
[INFO] [stdout] test timecode_generator::tests::test_next_returns_current_before_increment ... ok
[INFO] [stdout] test timecode_calculator::tests::test_display_ndf ... ok
[INFO] [stdout] test timecode_generator::tests::test_seek_alias ... ok
[INFO] [stdout] test timecode_range::tests::test_contains_frame_inside ... ok
[INFO] [stdout] test timecode_generator::tests::test_skip_backward_wraps ... ok
[INFO] [stdout] test timecode_range::tests::test_contains_frame_outside ... ok
[INFO] [stdout] test timecode_range::tests::test_duration_frames ... ok
[INFO] [stdout] test timecode_generator::tests::test_skip_forward ... ok
[INFO] [stdout] test timecode_range::tests::test_list_merge_adjacent ... ok
[INFO] [stdout] test timecode_generator::tests::test_skip_forward_wraps_midnight ... ok
[INFO] [stdout] test timecode_generator::tests::test_start_resumes_after_stop ... ok
[INFO] [stdout] test timecode_generator::tests::test_stop_freezes_position ... ok
[INFO] [stdout] test timecode_range::tests::test_new_same_start_end ... ok
[INFO] [stdout] test timecode_calculator::tests::test_parse_display_roundtrip ... ok
[INFO] [stdout] test timecode_calculator::tests::test_from_frame_count_ndf ... ok
[INFO] [stdout] test timecode_range::tests::test_list_merge_overlapping ... ok
[INFO] [stdout] test timecode_range::tests::test_list_total_frames ... ok
[INFO] [stdout] test timecode_range::tests::test_overlaps_adjacent_no_overlap ... ok
[INFO] [stdout] test timecode_range::tests::test_new_invalid_returns_none ... ok
[INFO] [stdout] test timecode_range::tests::test_overlaps_true ... ok
[INFO] [stdout] test timecode_range::tests::test_overlaps_touching ... ok
[INFO] [stdout] test timecode_range::tests::test_split_at_boundary_invalid ... ok
[INFO] [stdout] test timecode_range::tests::test_split_at_valid ... ok
[INFO] [stdout] test timecode_range::tests::test_new_valid ... ok
[INFO] [stdout] test vitc::decoder::tests::test_bits_to_u8 ... ok
[INFO] [stdout] test vitc::decoder::tests::test_crc_calculation ... ok
[INFO] [stdout] test vitc::decoder::tests::test_decoder_creation ... ok
[INFO] [stdout] test vitc::decoder::tests::test_field_detector ... ok
[INFO] [stderr]    Doc-tests oximedia_timecode
[INFO] [stdout] test vitc::decoder::tests::test_line_quality_analyzer ... ok
[INFO] [stdout] test vitc::encoder::tests::test_crc_calculation ... ok
[INFO] [stdout] test vitc::encoder::tests::test_encode_line ... ok
[INFO] [stdout] test vitc::encoder::tests::test_encoder_creation ... ok
[INFO] [stdout] test vitc::encoder::tests::test_line_buffer ... ok
[INFO] [stdout] test vitc::encoder::tests::test_pixel_level_adjuster ... ok
[INFO] [stdout] test vitc::encoder::tests::test_user_bits_helper ... ok
[INFO] [stdout] test vitc::tests::test_constants ... ok
[INFO] [stdout] test vitc::tests::test_vitc_reader_creation ... ok
[INFO] [stdout] test vitc::tests::test_vitc_writer_creation ... ok
[INFO] [stdout] test vitc::tests::test_video_standard ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 495 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test src/ltc_encoder.rs - ltc_encoder::LtcAudioEncoder (line 170) ... FAILED
[INFO] [stdout] test src/timecode_event.rs - timecode_event (line 14) - compile ... ok
[INFO] [stdout] test src/tc_calculator.rs - tc_calculator::TcCalculator (line 62) ... ok
[INFO] [stdout] test src/ltc_parser.rs - ltc_parser::LtcParser (line 92) ... ok
[INFO] [stdout] test src/tc_math.rs - tc_math::TcMath (line 133) ... ok
[INFO] [stdout] test src/tc_validator.rs - tc_validator::TimecodeValidator (line 100) ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/ltc_encoder.rs - ltc_encoder::LtcAudioEncoder (line 170) stdout ----
[INFO] [stdout] error: cannot construct `Timecode` with struct literal syntax due to private fields
[INFO] [stdout]    --> src/ltc_encoder.rs:177:10
[INFO] [stdout]     |
[INFO] [stdout] 177 | let tc = Timecode {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: ...and other private field `frame_count_cache` that was not provided
[INFO] [stdout] help: you might have meant to use the `from_raw_fields` associated function
[INFO] [stdout]     |
[INFO] [stdout] 177 - let tc = Timecode {
[INFO] [stdout] 178 -     hours: 1, minutes: 0, seconds: 0, frames: 0,
[INFO] [stdout] 179 -     frame_rate: FrameRateInfo { fps: 25, drop_frame: false },
[INFO] [stdout] 180 -     user_bits: 0,
[INFO] [stdout] 181 - };
[INFO] [stdout] 177 + let tc = Timecode::from_raw_fields(_, _, _, _, _, _, _);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/ltc_encoder.rs - ltc_encoder::LtcAudioEncoder (line 170)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 5 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.44s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "2d9a4bfb54cd7fec63d1a012b159218c134170ad8642118fa12982d3b5ba5d4f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2d9a4bfb54cd7fec63d1a012b159218c134170ad8642118fa12982d3b5ba5d4f", kill_on_drop: false }`
[INFO] [stdout] 2d9a4bfb54cd7fec63d1a012b159218c134170ad8642118fa12982d3b5ba5d4f
